The present invention relates to a method for programming off-line an industrial robot.
More particularly, the present invention relates to a method, which allows performing the off-line programming of the movement of a robot, which is dedicated to an industrial apparatus for processing products.
Several methods for programming the movement of industrial robots are known in the state of the art. The term xe2x80x9cprogrammingxe2x80x9d designates the act of performing a set of operations required to generate sequences of low-level instructions executable by the actuation and control unit of the industrial robot. These sequences of low-level instructions are suitable for controlling the movement of the robot in an empty space, inside the manufacturing cell, in which the robot is placed. The type of movement selected depends ultimately on the type of apparatus to which the industrial robot is dedicated.
The most widely used methods provide for direct programming of the actuation and control unit by using devices dedicated to facilitating selflearning in the field. In practice, sequences of low-level executable instructions, implemented in one of the known languages, such as for example the RAPID(copyright) language, are stored directly in the actuation and control unit. Although these methods achieve their intended goals, they have some drawbacks.
A relatively long downtime of the robot is in fact necessary during its programming. This fact entails a considerable increase in operation costs, with a consequent reduction in the fields of application in which it can be used advantageously.
Furthermore, programming occurs substantially manually: the data, albeit relatively rapidly by virtue of the use of the described dedicated devices, must be entered one by one. The lack of automatic systems in data entry entails a considerable increase in the possibilities of error. The possibility to download these data from predefined information-technology media is furthermore limited. In order to obviate these drawbacks, methods have become widespread which provide for off-line programming of the movement of the robot. Instead of being directly stored in the actuation and control unit, the sequences of executable instructions are generated in an information-technology medium, which is separate from the actuation and control unit. The sequences of executable instructions are then downloaded to the actuation and control unit, considerably reducing machine downtime.
Even these known methods of the current art, however, have some drawbacks.
First of all, since sequences of low-level instructions are generally still used, programming is in any case complex and onerous: in particular, the code is difficult to read and correct. This requires the presence of highly specialized personnel. Furthermore, again due to the use of a language which is characterized by a low level of abstraction, it is necessary to program the robot whenever there is a change in the industrial process performed by the apparatus to which the robot is dedicated. In practice it is necessary to reprogram the robot even for the processing of products that are slightly dissimilar. The use of a low-level language in such situations makes it difficult to reuse sequences of instructions that have already been coded. Finally, the practice of these known kinds of method of the current art has demonstrated that acquisition of data from predefined information-technology media, in which the product being processed has been designed by using dedicated graphic tools, for example a CAD (Computer Aided Design) environment, is still very difficult. This is clearly a considerable limitation in terms of flexibility of the robot operation.
Therefore, the aim of the present invention is to provide a method for the off-line programming of the movement of an industrial robot, which allows the user to work by using sequences of instructions characterized by a relatively high degree of abstraction.
Within the scope of this aim, an object of the present invention is to provide a method, which allows adopting standard application modules, which are easy to use, for programming.
Another object of the present invention is to provide a method, which allows an easy and simple acquisition of data from predefined information technology media, particularly from information technology-based design environments of the CAD type.
Another object of the present invention is to provide a method, which allows an easy reuse of sequences of instructions and/or data that have already been coded and/or used.
Another object of the present invention is to provide a method, which allows even not highly specialized personnel to perform off-line programming of the robot.
Another object of the present invention is to provide a method for the off-line programming of the movement of an industrial robot, which is easy to implement and at competitive costs.
Thus, the present invention provides a method for performing the off-line programming of the movement of an industrial robot, said industrial robot being dedicated to an industrial apparatus for processing products and comprising at least one actuation and control unit, characterized in that it comprises the phases that consist in:
a) acquiring, in a computerized medium, first data which are indicative of the configuration of a manufacturing cell in which said industrial robot has to operate;
b) acquiring, in said computerized medium, second data which are indicative of the geometry of a product being processed by said industrial apparatus;
c) acquiring, in said computerized medium, third data which are indicative of a sequence of steps performed by said industrial apparatus for processing said product;
d) acquiring, in said computerized medium, fourth data which are indicative of the geometry of tools used by said industrial apparatus during the processing of said product;
e) automatically generating, in said computerized medium, on the basis of the data acquired in said steps a) and/or b) and/or c) and/or d), one or more first sequences of high-level instructions and one or more second sequences of low-level instructions, said first and second instruction sequences being suitable to manage one or more application modules stored beforehand on board said actuation and control unit; and
f) automatically executing, in said actuation and control unit, said first and second instruction sequences.